package com.wmh.baseservice.robot.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.wmh.baseservice.robot.entity.RobotJobTask;
import com.wmh.baseservice.robot.pojo.vo.robotjobtask.RobotJobTaskAddReqVO;
import com.wmh.baseservice.robot.pojo.vo.robotjobtask.RobotJobTaskUpdateReqVO;
import org.quartz.SchedulerException;

/**
* @author 谢骏
* @description 针对表【robot_job_task】的数据库操作Service
* @createDate 2023-08-31 14:51:17
*/
public interface RobotJobTaskService extends IService<RobotJobTask> {

    /**
     * 新增
     * @param reqVO 请求对象
     */
    void create(RobotJobTaskAddReqVO reqVO) throws SchedulerException;

    /**
     * 删除
     * @param id  主键
     */
    void delete(Long id) throws SchedulerException;

    /**
     * 修改定时任务
     * @param reqVO 请求对象
     */
    void update(RobotJobTaskUpdateReqVO reqVO) throws SchedulerException;


    /**
     * 修改状态
     * @param id 主键
     * @param status 要达到的状态
     */
    void updateStatus(Long id, Integer status) throws SchedulerException;

    /**
     * 马上触发一次任务
     * @param jobId 任务编号
     */
    void triggerJobTask(Long jobId) throws SchedulerException;
}
